# 第二课堂管理系统启动脚本（带修复功能）
# 此脚本用于清理重复的Mapper XML文件、修复菜单父ID为空的问题并启动系统

Write-Host "===== 第二课堂管理系统启动脚本（带修复功能）====="
Write-Host "正在准备启动系统..."

# 1. 清理项目
Write-Host "步骤1: 清理项目..."
mvn clean
Write-Host "清理完成！"

# 2. 编译项目
Write-Host "步骤2: 编译项目..."
mvn package -DskipTests
Write-Host "编译完成！"

# 3. 删除重复的Mapper XML文件
Write-Host "步骤3: 删除重复的Mapper XML文件..."
$adminMapperPath = ".\scms-admin\target\classes\mapper\secondclass"
if (Test-Path $adminMapperPath) {
    Write-Host "正在删除 $adminMapperPath 目录中的Mapper XML文件..."
    Remove-Item -Path "$adminMapperPath\*.xml" -Force
    Write-Host "删除完成！"
} else {
    Write-Host "$adminMapperPath 目录不存在，无需删除。"
}

# 4. 修复菜单父ID为空的问题
Write-Host "步骤4: 修复菜单父ID为空的问题..."
Write-Host "正在连接数据库执行修复脚本..."
# 这里假设已经安装了MySQL客户端，并且可以通过命令行连接数据库
# 如果没有安装MySQL客户端，可以手动执行sql/fix_menu_parent_id.sql脚本
try {
    mysql -u root -p123456 scms < sql/fix_menu_parent_id.sql
    Write-Host "修复脚本执行完成！"
} catch {
    Write-Host "无法自动执行修复脚本，请手动执行sql/fix_menu_parent_id.sql脚本。"
    Write-Host "或者在系统启动后，访问http://localhost:8089/system/menu/fix/parent-id接口进行修复。"
}

# 5. 启动系统
Write-Host "步骤5: 启动系统..."
Write-Host "系统正在启动，请稍候..."
cd scms-admin
java -jar target/scms-admin.jar 